import axios from 'axios'
// 创建axios新实例
const ajax = axios.create({
	baseURL: '/api', // 接口根地址  http://www.shuiyue.info:15666
	// baseURL: 'http://localhost:8080', // 接口根地址
	timeout: 5000 // 超时时间
})
/**
 * 请求拦截器
 */
ajax.interceptors.request.use(
	config => {
		// 发起请求之前做一些处理
		const token = localStorage.getItem('TOKEN')
		if(!token){
			return config
		}
		config.headers['token'] = token
		return config
	},
	err => Promise.reject(err)
)
/**
 * 响应拦截器
 */
ajax.interceptors.response.use(
	res => {
		// 响应数据做一些处理
		return res.data
	},
	err => Promise.reject(err)
)
// 支持async + await
function Ajax(req) {
    // 定义一个只有resolve的promise对象
    return new Promise(resolve => {
        ajax.request({
            url: req.url,
            method: req.method || 'GET',
            data: req.data || {},
            params: req.params || {},
             
        }).then((res)=> {
            resolve(res)
        }).catch(err => {
            resolve(err)
        })
    })
}

export default Ajax